package day05;
import java.util.Arrays;
//数组的演示
public class ArrayDemo {
    public static void main(String[] args) {
        //1)数组的定义:
        //声明整型数组a,包含5个元素,每个元素都是int类型,默认值为0
       /* int[] a = new int[5];
        //声明浮点型数组d,包含10个元素,每个元素都是double类型,默认值为0.0
        double[] d = new double[10];
        //声明布尔型数组b,包含26个元素,每个元素都是boolean类型,默认值为false
        boolean[] b = new boolean[26];

        //2)数组的初始化:初始化的是数组中的元素
        int[] arr1 = new int[3];//0,0,0
        int[] arr2 = {2,5,8};//2,5,8
        int[] arr3 = new int[]{2,5,8};//2,5,8
        int[] arr4;
        //arr4 = {2,5,8};//编译错误,此方式只能声明同时初始化
        arr4 = new int[]{2,5,8};//正确

        //3)数组的访问
        int[] arr = new int[3];
        System.out.println("数组的长度:"+arr.length);//3,长度
        System.out.println(arr[0]);//0,输出第1个元素的值
        arr[0] = 100;//给第1个元素赋值为100
        arr[1] = 200;//给第2个元素赋值为200
        arr[2] = 300;//给第3个元素赋值为300
        //arr[3] = 400;//运行时会发生数组下标越界异常
        System.out.println(arr[2]);//300,输出最后一个元素的值
        System.out.println(arr[arr.length-1]);//300,输出最后一个元素的值*/

        //4)数组的遍历:从头到尾挨个走一遍
       /* int[] arr = new int[10];
        for (int i=0;i<arr.length;i++){//遍历arr数组
            arr[i] =(int)Math.random()*100;//给每个元素赋值为0到99的随机数
            System.out.println(arr[i]);//输出每个元素的值
        }*/

        //5)数组的复制:
      /*  int[] a = {10,20,30,40,50,};
        int[] b = new int[6];//0,0,0,0,0,0
        //a:源数组
        //1:源数组的起始下标
        //b:目标数组
        //0:目标数组的起始下标
        //4:要复制的元素个数
        System.arraycopy(a,1,b,0,4);//灵活性好
        for (int i = 0;i<b.length;i++){
            System.out.println(b[i]);
        }*/

        /*int[] a = {1,2,3,4,8,9};
        int[] b = new int[4];//0,0,0,0
        System.arraycopy(b,1,a,2,2);
        for (int i=0;i<a.length;i++){
            System.out.println(a[i]);
        }*/

       /* int[] a = {10,20,30,40,50};
        //a:源数组
        //b:目标数组
        //6:目标数组的长度
        //--若目标数组长度>源数组长度,则末尾补默认值
        //--若目标数组长度<源数组长度,则将末尾的裁掉
        int[] b = Arrays.copyOf(a,6);//灵活性差
        for (int i=0;i<b.length;i++){
            System.out.println(b[i]);
        }*/
        //数组的扩容















    }

}
